package dao;

import java.util.List;

import model.pojo.Categoria;

import org.hibernate.Session;
import org.hibernate.Transaction;


public class CategoriaDAOHibernate implements CategoriaDAO{

	private Session session;
	public void setSession(Session session){
		this.session = session;
	}
	@Override
	public void salvar(Categoria categoria) {
		Transaction transacao = this.session.beginTransaction();
		try{
			this.session.saveOrUpdate(categoria);
			transacao.commit();
		}catch (Exception e) {
			transacao.rollback();
		}
	}

	@Override
	public void excluir(Categoria categoria) {
		this.session.update(categoria);
		
	}
	@Override
	public Categoria carregar(Integer codigo) {
		return (Categoria) this.session.get(Categoria.class, codigo);
		
	}
	@Override
	public List<Categoria> listar() {
		return this.session.createCriteria(Categoria.class).list();
	}
	
}
